function onUse(cid, item, frompos, item2, topos)
	dofile(getDataDir() .. '/actions/scripts/questsystem/quest_functions.lua')
	dofile(getDataDir() .. '/actions/scripts/questsystem/quest_list.lua')
	
	if( getPlayerStorageValue( cid, item.uid ) <= 0 or getPlayerAccess(cid) >= ACCESS_GAMEMASTER ) then
		if quests[item.uid] then
			if assert(loadstring(string.dump(quests[item.uid].func)))(cid, quests[item.uid].args) == TRUE then
				setPlayerStorageValue( cid, item.uid, 1 )
			end
		else
			local subType = item.actionid - 100
			if item.uid > 70000 then return FALSE; end
			if subType <= 0 then subType = 1; end
			local it = doPlayerAddItem( cid, item.uid, subType )
			local itemdesc = getItemDescriptions( item.uid )
			if it ~= LUA_ERROR then
				if( getItemWeight( it ) > getPlayerFreeCap( cid ) and getPlayerAccess(cid) == ACCESS_PLAYER ) then
					if subType ~= 1 then
						doPlayerSendTextMessage( cid, MESSAGE_INFO_DESCR, "You have found " .. subType .. " " .. itemdesc.plural .. ". They weigh " .. getItemWeight( it ) .. " oz. and it's too heavy for you to carry." )
					else
						doPlayerSendTextMessage( cid, MESSAGE_INFO_DESCR, "You have found " .. itemdesc.article .. " " .. itemdesc.name .. ". It weighs " .. getItemWeight( it ) .. " oz. and it's too heavy for you to carry." )
					end
					doRemoveItem( it, subType )
				else
					if subType ~= 1 then
						doPlayerSendTextMessage( cid, MESSAGE_INFO_DESCR, "You have found " .. subType .. " " .. itemdesc.plural .. "." )
					else
						doPlayerSendTextMessage( cid, MESSAGE_INFO_DESCR, "You have found " .. itemdesc.article .. " " .. itemdesc.name .. "." )
					end
					setPlayerStorageValue( cid, item.uid, 1 )
				end
			else
				if subType ~= 1 then
					doPlayerSendTextMessage( cid, MESSAGE_INFO_DESCR, "You have found " .. subType .. " " .. itemdesc.plural .. ". You must free a slot in one of your containers, or one of your hands, if you want to get it." )
				else
					doPlayerSendTextMessage( cid, MESSAGE_INFO_DESCR, "You have found " .. itemdesc.article .. " " .. itemdesc.name .. ". You must free a slot in one of your containers, or one of your hands, if you want to get it." )
				end
			end
		end	
	else
		doPlayerSendTextMessage( cid, MESSAGE_INFO_DESCR, "It is empty." )
	end
	
	return TRUE
end